package com.leap.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.leap.entity.Account;
import com.leap.entity.InteractComment;
import com.leap.entity.dto.AuthorizeDTO;
import org.springframework.security.core.userdetails.UserDetailsService;

import java.util.List;

public interface AccountService extends IService<Account>,UserDetailsService {


    /**
     * 微信登录
     * @param code
     * @return
     */
    Account wxLogin(String code);

    Account selectByOpenId(String openid);

    Account loadUserById(String openid);

    void updateByDTO(AuthorizeDTO authorizeDTO,String headerToken);

    AuthorizeDTO getInfoByToken(String headerToken);

    Boolean ChangeLikeByArticleId(Long articleId,String headerToken);

    Boolean ChangeLikeByCommentId(Long commentId,String headerToken);

    void loadCategoryViewCache(Long accountId);

    void loadLikeListCache(Long accountId);

    void refreshInteractList(Long accountId);

    void loadCategoryName();

    List<Long> loadCommentLikeList(Long accountId);

}
